Resource Selection and Reselection for Direct Communications between Devices

ABSTRACT

Methods and apparatus for resource allocation in a D2D network (100) are disclosed for reducing resource collisions among wireless devices (200) engaged in device-to-device (D2D) communications. In D2D communications, each wireless device (200) selects a radio resource for signal transmissions and retains the selected resource until a reselection becomes necessary. During the transmission, the wireless device (200) detects a triggering condition for resource reselection. Responsive to the triggering condition, the wireless device (200) performs resource reselection according to a reselection rule that is designed to reduce resource collisions among wireless devices (200).

TECHNICAL FIELD

This present application relates generally to device-to-device (D2D)communications, and more specifically, to resource allocation amongdevices engaging in D2D communications.

BACKGROUND

The Long Term Evolution (LTE) Release 12 (Rel-12) standard underconsideration by the Third Generation Partnership Project (3GPP)provides support for device-to-device (D2D) communications targetingboth commercial and public safety applications. Devices configured forD2D communications can communicate directly with one another without anintervening base station. One application for D2D communications isdirect vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I), andvehicle-to-pedestrian (V2P) communications. D2D communications involvingat least one vehicle are referred to generally as vehicle-to-device(V2x) communications. V2x communications may take advantage of networkinfrastructure when available, but direct V2x communications should bepossible when no network is available.

V2x communications have been proposed for road safety applications, inaddition to general communications. For instance, the EuropeanTelecommunications Standards Institute (ETSI) has defined two types ofmessages for road safety applications: the Co-operative AwarenessMessage (CAM) and the Decentralized Environment Notification Message(DENM). CAMs enable emergency vehicles or other vehicles to broadcastwarning messages to notify other devices of its presence. CAMs can alsobe used to improve safety under normal traffic conditions. DENMs areevent-triggered messages, which may be triggered by braking, turning,acceleration, deceleration, or similar events. CAMs and DENMs may targetvehicles, pedestrians, and/or infrastructure. Under the ETSI standard, adevice may be configured to check for CAMs and/or DENMs every 100 ms.The detection latency for CAMs and DENMs is 100 ms, which is longer thanthe 50 ms detection latency required for pre-crash sensing. The packagesize of CAMs and DENMs varies from about 100 to more than 800 bytes andthe typical size is about 300 bytes. Ideally, CAMs and DENMs should bedetected by all vehicles in proximity to the vehicle broadcasting themessage.

Besides the ETSI, other regulating organizations have also providedstandards defining D2D messages aimed at improving road safety. Forexample, the Society of Automotive Engineers (SAE) has also defined amessage for V2x communications known as the Basic Safety Message (BSM).BSMs may be classified into different priority levels based on theimportance or urgency of the message.

In D2D networks, and especially V2x networks, devices typically share apool of radio resources that are accessed on a contention basis, withlimited supervision or control by the network. A distributed resourceallocation scheme is used where devices select resources fortransmissions from a shared resource pool on a contention basis after asensing operation of the radio environment. Ideally, the distributedresource allocation converges to a stable equilibrium point thatefficiently utilizes the radio resources.

One concern with distributed resource allocation schemes, particularlyfor V2x communications, is that the radio conditions are constantlychanging and that devices must reselect radio resources as the radioconditions change. The selection or reselection of radio resources byone device may affect the selection or reselection of radio resources byother devices. In this case, the distributed resource allocation may notconverge to a stable solution even in this absence of mobility. Unstableresource allocation and can lead to degraded performance and inefficientuse of the radio resources.

Another concern with distributed resource allocation is that manywireless devices operate in a half-duplex mode, which means that thewireless devices cannot transmit and receive at the same time. Twodevices in close proximity may experience similar radio conditions andthus select the same radio resources for transmissions, which issometimes referred to as a collision. If two devices operating inhalf-duplex mode select the same radio resources for transmission, theywill not be able to communicate with each other. This problem may bemitigated by randomizing resource selection at each device to minimizethe likelihood of selecting the same radio resources. However,randomizing the resource selection may prevent the distributed resourceallocation from converging to a stable solution.

SUMMARY

The present disclosure relates to resource selection for D2Dcommunications enabling direct communication between devices withoutassistance of a network to relay communications between the devices.Generally, each wireless device selects a radio resource for signaltransmissions and retains the selected resource until a reselection isnecessary. Techniques are presented for introducing an element ofrandomness to the reselection process to avoid collisions withoutdestabilizing the distributed resource allocation.

Exemplary embodiments of the disclosure comprise methods of selectingradio resources by a device for device-to-device communications with oneor more other devices. In one embodiment, the method comprises selectinga first radio resource form a shared pool of radio resources fortransmission of signals according to a selection rule; performingmeasurements on the first radio resource and one or more candidate radioresources in the shared pool of radio resources; detecting a triggeringcondition based at least in part on the measurements; and responsive tothe detection of the triggering condition, reselecting (420) a secondradio resource from the one or more candidate radio resources accordingto a reselection rule.

In some embodiments of the method, selecting a first radio resource forma shared pool of radio resources for transmission of signals accordingto a selection rule comprises selecting a radio resource based on afirst utility function.

In some embodiments of the method, selecting a first radio resourcebased on a first utility function comprises selecting one of said radioresources from the shared pool of radio resources that maximizes thefirst utility function as the first radio resource.

In some embodiments of the method, selecting a first radio resourcebased on a first utility function comprises ranking available radioresources in the shared pool of radio resources based on the firstutility function; and selecting one of the available radio resourcesfrom among the n highest ranked radio resources.

In some embodiments of the method, selecting one of the available radioresources from among the n highest ranked radio resources comprisesrandomly selecting one of the available radio resources from among the nhighest ranked radio resources.

In some embodiments of the method, selecting one of the available radioresources from among the n highest ranked radio resources comprisesselecting one of the available radio resources from among the n highestranked radio resources according to a device-specific pattern.

In some embodiments of the method, reselecting a second radio resourcefrom the one or more candidate radio resources according to areselection rule comprises reselecting the second radio resource basedon a second utility function

In some embodiments of the method, reselecting a second radio resourcebased on a first utility function comprises reselecting one of saidradio resources from the shared pool of radio resources that maximizesthe second utility function as the second radio resource.

In some embodiments of the method, reselecting a second radio resourcebased on a second utility function comprises ranking available radioresources in the shared pool of radio resources based on the secondutility function; and reselecting one of the available radio resourcesfrom among the n highest ranked radio resources.

In some embodiments of the method, reselecting one of the availableradio resources from among the n highest ranked radio resourcescomprises randomly selecting one of the available radio resources fromamong the n highest ranked radio resources.

In some embodiments of the method, reselecting one of the availableradio resources from among the n highest ranked radio resourcescomprises selecting one of the available radio resources from among then highest ranked radio resources according to a device-specific pattern.

In some embodiments of the method, the first utility function and thesecond utility functions are different.

In some embodiments of the method, reselecting a second radio resourcefrom the one or more candidate radio resources according to areselection rule comprises reselecting a second radio resource accordingto a device-specific reselection rule to reduce resource collisionbetween the device and other devices.

In some embodiments of the method, reselecting a second radio resourcefrom the one or more candidate radio resources according to adevice-specific reselection rule comprises reselecting the second radioresource according to a device-specific pattern.

In some embodiments of the method, the first radio resource comprisesboth time and frequency resources, and wherein the device-specificpattern comprises a circular shift of the time resource by adevice-specific number of time units.

In some embodiments of the method, reselecting a second radio resourcefrom the one or more candidate radio resources according to adevice-specific reselection rule comprises reselecting the second radioresource based on a time of the first radio resource, a frequency of thefirst radio resource, or both.

In some embodiments of the method, the triggering condition is based ona utility of the first radio resource, a utility of the second radioresource, or both, and wherein the utility of the first radio resourceand the utility of the second radio resource are based on themeasurements.

In some embodiments of the method, the utility of the first radioresource and the utility of the second radio resource are based onrespective utility functions that are different.

In some embodiments of the method, the triggering condition comprises acondition that the utility of the first radio resource is below a firstthreshold that the utility of the second radio resource is above asecond threshold, or both.

In some embodiments of the method, the triggering condition comprises acondition that the difference between the utility of the second radioresource and that of the first radio resource exceeds a threshold.

In some embodiments of the method, the triggering condition comprises acondition that the difference between a first measurement performed onthe first radio resource and a second measurement performed on thesecond radio resource exceeds a threshold.

In some embodiments of the method, the first and second measurementscomprise interference measurements.

In some embodiments of the method, the triggering condition is furtherbased on a time threshold.

Other embodiments of the disclosure comprise a device configured fordevice-to-device communications. In one embodiment, the device comprisesinterface circuit for communicating with other devices and a processingcircuit configured to select resources for D2D communications. Theprocessing circuit may configured to perform resource selectionaccording to any of the above described methods.

Other embodiments of the disclosure comprise a computer program productcomprising program code stored in a computer readable medium, that whenexecuted by a processing circuit in a device, causes the device toperform any one of the methods hereinabove described.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an exemplary device-to-device communications networkconfigured for D2D communications.

FIG. 2 illustrates a block of radio resources shared among multiplewireless devices engaging in D2D communications.

FIG. 3 is a flow chart illustrating an exemplary resource allocationmethod implemented by a device engaging in D2D communications.

FIG. 4 illustrates a resource reselection in which resources used duringperiod t−1 are replaced by newly selected resourced during period t.

FIG. 5 illustrates a device specific resource reselection for twodevices showing how resource collision may be avoided.

FIG. 6 illustrates an exemplary distributed resource allocation methodimplemented by a device engaging in D2D communications.

FIG. 7 illustrates an exemplary device configured to reselect resourcesin accordance to a reselection rule designed to reduce resourcecollisions among devices engaging in D2D communications.

DETAILED DESCRIPTION

The present disclosure relates to resource selection for D2Dcommunications enabling direct communication between devices without theassistance of a network to relay communications between the devices.Generally, each wireless device selects a radio resource for signaltransmissions and retains the selected resource until a reselection isnecessary. Techniques are presented for introducing an element ofrandomness into the reselection process to avoid collisions withoutdestabilizing the distributed resource allocation.

FIG. 1 illustrates an exemplary D2D network 100 that supports D2Dcommunications. The network 100 comprises a wireless communicationnetwork 102 and a plurality of wireless devices 200 configured for D2Dcommunications including devices A-C installed on vehicles, device Dinstalled on a road fixture, and device 200E carried by a pedestrian. Inthe exemplary embodiment described herein, the wireless communicationnetwork 102 comprises an LTE Rel-12 network supporting D2Dcommunications. Those skilled in the art will appreciate, however, thatthe resource allocation techniques herein described are applicable toany type of wireless communication network that support D2Dcommunications.

The wireless devices 200 are configured to communicate directly witheach other without the assistance of the communication network 102 torelay communications. The wireless devices 200 implement a devicediscovery protocol, which enables the wireless devices 200 to detectother wireless devices 200 that are in close proximity. Moreparticularly, the wireless devices 200 are configured to broadcast anddetect discovery messages that carry the device identity of theoriginating wireless device 200. The discovery messages may also carryan application identity associated with a D2D application. When abroadcast discovery message is detected, the detecting wireless device200 that received the discovery message may establish a directcommunication link with the originating wireless device 200 thatbroadcast the discovery message.

The wireless devices 200 may also be configured to communicate over theLTE network 102 when network coverage is available. In one exemplaryembodiment, the wireless devices 200 are configured with an LTE-basedV2x interface to take advantage of the LTE network infrastructure whennetwork coverage is available.

The wireless devices 200 are allocated a pool of shared radio resourcesfrom which the wireless devices 200 select radio resources fortransmission on a contention basis. In some embodiments, a hybridresource allocation scheme may be used where the LTE network 102allocates, from its own radio resources, a pool of shared radioresources for use by wireless devices 200 and the wireless devices 200select radio resources from the shared resource pool. The sharedresource pool may be dynamically updated over time depending on thenumber of wireless devices. In other embodiments, the wireless devices200 may be allocated a pool of radio resources that are separate fromthe resources available to the LTE network 102. In either case, theshared pool of radio resources may comprise contiguous or non-contiguoustime/frequency resources.

The shared radio resources available for use by the wireless devices 200may be viewed as a time-frequency gird. FIG. 2 depicts an exemplarytime-frequency grid representing the shared radio resources for D2Dcommunications. The radio resources are divided into a plurality of timeperiods in the time domain and a plurality of frequencies in thefrequency domain. Each time period is further divided into 0.5 ms timeslots. For a normal cyclic prefix, a time slot comprises 7 OFDM symbols.

The radio resources are typically allocated in groups called resourceunits that span a subset of the shared radio resources. The resourceunits are multiplexed in both time and frequency domains. For example,multiple resource units in the same time slot may be multiplexed indifferent frequencies in the frequency domain. Similarly, multipleresource units of the same frequency may be multiplexed in differenttime slots in the time domain. In one exemplary embodiment, a resourceselection is selected for a recurring time period, which comprisesmultiple time slots. In one embodiment, a resource unit may comprise aresource block, which is a unit spanning one time slot and 12frequencies.

Generally, when a resource is selected for a transmission, the wirelessdevice 200 continues using the same time slot and frequency in each timeperiod until the transmission is finished. After the transmission iscomplete, the resources are released. As will be described in moredetail below, the wireless device 200 may reselect resources during atransmission, which means that the time slot, frequency, or both usedfor the transmission may before the transmission is complete.

A number of distributed resource selection strategies for allocatingradio resources are possible. In general, a wireless device 200 isconfigured to select a resource that maximizes a first predefinedutility function. The selection rule is given generally by:

Ru*(t)=argmax_(Ru(t)) {J(Ru(t),Mu(t))},  Eq. (1)

where u is an index indicating the device 200, Ru*(t) is the selectedresource, Ru(t) is a candidate resource available for selection bydevice u, Mu(t) is a corresponding measurement of the radio environmentperformed by the device u, and J(.) is a utility function. At a giventime t, the utility function J(.) gives a utility given Ru(t) and Mu(t)as inputs. In general, the device 200 is configured to select at time tthe radio resource Ru(t) that maximizes the utility function J(.).

The radio environment being measured by the device 200 is in part aresult of the resource selections performed by other wireless devices200 in the network 100. Thus, the measurement Mu(t) reflects the effectof the resource selections performed by other devices 200 in the network100. Also, because wireless devices 200 typically transmitintermittently and may be moving, the radio conditions do not remainconstant over time. Thus, Mu(t) is time variant and is coupled with theresource selections made by other devices 200. The optimal resourceRu*(t) given by Equation (1) will therefore vary over time. Therefore, areselection of the radio resources used for transmissions is likely tobe needed as the radio conditions change.

Another complication arises from the half-duplex operation of manywireless devices 200. A wireless device 200 operating in half-duplexmode cannot transmit and receive at the same time. Thus, when a wirelessdevice 200 transmits, it will not be able to receive signals from otherwireless devices 200. Conversely, when a wireless device 200 receives itwill not be able to transmit. In V2x networks, wireless devices 200broadcast messages to the surrounding environment. In the case where twoor more wireless devices 200 are in close proximity to each other, theymay miss messages transmitted by other wireless devices 200 using thesame time resource for transmitting. This scenario is referred to hereinas radio frequency (RF) blocking because a wireless device 200 that istransmitting cannot receive messages from other wireless devices 200transmitting on the same time resource. Thus, a wireless device 200 maymiss discovery messages and thus fail to detect the presence of otherwireless devices 200. In V2x applications, the wireless device 200 maymiss CAM or DENM messages, which could lead to potentially hazardoussituations, such as vehicle collisions. Therefore, an efficient resourceallocation algorithm in which wireless devices 200 in proximity of eachother use different time resources to transmit is one consideration forV2x networks.

One solution to the RF blocking problem is to design patterns for radioresource selection, which dictate how a wireless device 200 selects theradio resources for the next time period. In the current LTE Rel-12standard, the selection is purely random, meaning that the radioresource is selected for the next time period randomly from the D2Dresource pool. While this solution reduces continuous RF blocking ofwireless devices 200, it may lead to instability and undesirably poorperformance because the wireless devices 200 cannot predict futureresource utilization by other users when performing distributed resourceallocation.

In order to improve the solution to the RF blocking problem, it isuseful to differentiate between resource selection, and resourcereselection. Resource selection refers to the selection of atransmission resource by a wireless device 200 that has not previouslyselected radio resources in a recent or preceding time period. Resourcereselection refers to the selection of radio resources within resourcepool with time index t for a wireless device 200 that has previouslyallocated radio resources in a previous time period (e.g., at time indext−1).

The initial resource selection could be performed according to Equation(1), meaning that the wireless device 200 selects the resource thatoptimizes the utility function J(.). In another example, the wirelessdevice 200 may rank the set of candidate radio resources based on theutility function J(.) and select a resource from the n highest rankedresources, either at random or according to a pattern. Once the radioresources for transmitting are selected, the wireless device 200 shouldcontinue using the selected radio resources until a resource reselectionis triggered, which will be described in more detail below. Over time,the radio resources selected by the wireless device 200 may no longer beoptimal with respect to Equation (1) due to changes in radioenvironment. But, stability of the distributed resource allocation inthe D2D network 100 is improved by requiring each wireless device 200 toretain its selected radio resources until the triggering condition issatisfied.

A reselection of radio resources is performed only when a triggeringcondition is satisfied. In some embodiments, the reselection rule may bebased on a utility function, which may be similar to the selection ruleused by the wireless device 200 to select the initial radio resource forthe transmission. For example, the reselection rule may direct thewireless device 200 to reselect a resource that maximizes a secondpredefined utility function. The reselection rule is given generally by:

Ru*(t)=argmax_(Ru(t)) {Jr(Ru(t),Ru(t−1),Mu(t))}  Eq. (2)

where Ru(t) and Mu(t) are similarly defined as in Equation (1), Ru(t−1)represents the radio resource selected at time t−1, and Jr(.) representsthe utility function for reselection. In some embodiments, Ru(t−1) isnot included in the utility function Jr(.). Similarly to the initialresource selection, the wireless device 200 may rank the candidate radioresources based on the utility function and select one of the n highestranked radio resources at random or according to a pattern. In mostinstances, the utility function Jr(.) for reselection is different fromthe utility function J(.) for the initial selection. For example, theutility function Jr(.) may be constrained to reselect only the frequencyresource or only the time resource. The utility function may also takeinto account different measurements or other information not used in theinitial resource selection. However, in some embodiments, the utilityfunction Jr(.) for reselection may be the same as the utility functionJ(.) for the initial resource selection.

One criteria for a suitable reselection rule is that reselection ruleshould reduce or minimize resource collisions between devices that arelocated near each other. The measurements of the radio environmentobtained by closely located devices may be correlated. A suitableresource reselection algorithm should prevent these closely locateddevices from choosing the same resource.

In some embodiments, the reselection rule may be device-specific. Forexample, the reselection rule may comprise device-specific patterns forresource reselection. In one embodiment, the device-specific patterncomprises a circular shift of the time resource by k units, where krepresents the number of time slots and varies for different wirelessdevices 200. The reselection rule may introduce partial randomization tothe reselection process. In other embodiments, the reselection rule mayrestrict the set of candidate resources available for reselection. Therestriction may be based on the radio resources that are currentlyin-use. For example, the restriction may limit reselection to only timeor frequency resources. For example, the time index of the resources forreselection may be restricted by the frequency index of the resourcesused prior to reselection. In some embodiments, the reselection ruledirects the device 110 to reselect a resource by circular shifting thetime resource of the resource currently in-use, by a number of timeunits. The number of time units may be device specific.

As previously noted, a resource reselection according to someembodiments is performed only when a triggering condition is satisfied.The triggering condition may be expressed as Boolean-valued functiongiven by:

T(t)=F(Ru(t),Ru(t−1),Mu(t))  Eq. (3)

If the triggering condition is false, the resources are not reselectedand the wireless device 200 continues to use the previously allocatedresource, i.e. Ru(t)=Ru(t−1). The triggering condition is an indicationthat the previously selected resource may no longer be optimal. Thetriggering condition may be based on time, measurements of the radioenvironment, the utility of a current resource selection, the utility ofa new resource selection, or a combination thereof. An advantage ofconditioning the reselection on a triggering condition is that thedistributed resource allocation tends to be more stable.

In some embodiments, the triggering condition may be based on a timethreshold. In this case, the wireless device 200 may set a timer aftereach selection or reselection and perform the reselection only after thetime threshold is reached. The time threshold may comprise an integermultiple of the time period used for resource allocation. The timethreshold can be tuned to prevent the resource allocation in the D2Dnetwork 100 from continuously changing while reducing RF blocking.

In some embodiments, the triggering condition may be based onmeasurements of the radio environment. For example, the wireless device200 may perform measurements of the interference on the currently usedresources and/or other resources in the resource pool that arecandidates for reselection. In this case, the triggering condition maybe given by:

$\begin{matrix}{{T(t)} = \begin{Bmatrix}{true} & {{{{if}\mspace{14mu} {I\left( {{Ru}\left( {t - 1} \right)} \right)}} - {I\left( {{Ru}(t)} \right)}} \geq I_{thres}} \\{false} & {otherwise}\end{Bmatrix}} & {{Eq}.\mspace{14mu} (4)}\end{matrix}$

where I(Ru(t−1)) is the measured interference on the currently usedresource, I(Ru(t)) is the measured interference on the candidateresource, and I_(thres) is a predefined interference threshold. If thedifference I(Ru(t−1))−I(Ru(t)) exceeds the interference thresholdI_(thres), T(t) will be true and resource reselection is carried out.

In other embodiments, the triggering condition may be based on theutility of the current resource allocation, the utility of a newresource allocation, or both. The utility of a radio resource may beevaluated based on a utility function as previously described. Areselection may be triggered when one or more of the followingconditions is met:

-   -   the utility of the current resource allocation is below a        utility threshold;    -   the utility of a new resource allocation exceeds a utility        threshold;    -   the utility of the current resource allocation is below a first        utility threshold and the utility of a new resource allocation        exceeds a second and possibly higher utility threshold; or    -   the difference between the utility of a new resource allocation        and the utility of the current resource allocation exceeds a        threshold.

In some embodiments, the triggering condition based on a utility mayfurther include a time limitation. That is, resource reselection istriggered only if the condition is fulfilled over a certain period oftime.

The triggering condition may include more than one event. In someembodiments, the triggering condition may comprise both a time thresholdrequirement and a second requirement based on the measurements, such asa signal quality or utility requirement. The wireless device isconstrained to wait until a time-threshold is reached. When the timethreshold is reached, the wireless device waits until the secondcondition is satisfied to perform the reelection.

FIG. 3 illustrates an exemplary distributed resource allocation method300 implemented on a wireless device 200 that is configured tocommunicate with other wireless devices 200 in a D2D network 100 thatshare the same pool of time-frequency resources. After systeminitialization, the wireless device 200, selects an initial radioresource for transmitting to other wireless devices 200 (block 305). Insome embodiments, the wireless device 200 selects the initial resourceaccording to the selection rule given in Equation (1). After the initialresource selection, the wireless device 200 transmits using the selectedresource. Because the radio environment within the D2D network 100changes over time, the initial resource selected by the wireless device200 in block 305 may no longer be optimal after a period of time.Accordingly, the wireless device 200 is configured to reselect aresource when a trigger condition is detected. To determine whether aresource reselection is needed, the wireless device 200 checks thetriggering condition (block 310). If the triggering condition is falseor no triggering condition is detected, the wireless device 200 willcontinue using the same resource (block 315). If the triggeringcondition is true or the triggering condition is detected, the wirelessdevice 200 will perform resource reselection according to a reselectionrule (block 320). The wireless device 200 then checks whether thetransmission is complete (block 325). If not, the wireless device 200will return to block 305 and repeat the reselection process until thetransmission is complete. When the transmission is complete, the methodends (block 330).

FIG. 4 illustrates an exemplary resource reselection according to oneexemplary embodiment. In this example, a wireless device 200 measures orsenses the interference levels on two resource units denoted as Ru(t−1)and Ru(t). The resource unit Ru(t−1) is the resource selected at timet−1 and is the resource currently in use. The resource unit Ru(t) is acandidate resource and is available for selection at time t. Thewireless device 200 measures the interference on the resource Ru(t−1)and Ru(t). The interference measurements, denoted as I(Ru(t−1)) andI(Ru(t)), are performed at time period t−1. The interferencemeasurements are used as inputs to the triggering condition given byEquation (4). The wireless device 200 in this example determines thatthe triggering condition is satisfied because the difference between theinterference measurements exceeds an interference threshold.Accordingly, the wireless device 200 reselects Ru(t) for use at timeperiod t.

FIG. 5 illustrates how device-specific reselection can help avoidresource collisions in the distributed allocation method. In the exampleshown in FIG. 5, two wireless devices 200, denoted U1 and U2, aretransmitting in the same time slot during period t−1, but aremultiplexed in frequency. Consequently, the wireless devices 200 cannotreceive each other's transmissions due to half duplex constraints. Thewireless devices 200 are configured to sense the interference levels onother candidate resources in the resource pool. Because the wirelessdevices 200 are closely located, they both measure nearly identicallevels of interference on the candidate resources. In this scenario,reselection without any constraints may lead to a resource collisionwhere the two wireless devices 200 select the same resource. However, ifa device specific reselection rule is applied, such collisions can beavoided. In this example, it is assumed that the triggering conditionfor both wireless devices 200 is satisfied and that both wirelessdevices 200 therefore perform a reselection at time t. In this example,the wireless devices 200 are constrained to reselect time resources thatare a circular shift of the currently used resource. The circular shiftis denoted by k, where k represents the number of permanent slots forthe circular shift. If the wireless devices 200 use different values fork, the two wireless devices 200 will reselect different time slots attime T. In the example shown in FIG. 6, k=1 for U1 and k=2 for U2. Thus,the wireless devices 200 are able to communicate after the reselection.

FIG. 6 illustrates an exemplary resource reselection method 400implemented on the wireless device 200 according to one exemplaryembodiment. The wireless device 200 initially selects a first radioresource for transmission of signals according to a selection rule(block 405). The wireless device 200 performs measurements on the firstradio resource and one or more candidate radio resources while thewireless device 200 is transmitting (block 410). Before the transmissionis complete, the wireless device 200 detects a triggering condition(block 415). In some embodiments, the triggering condition may bedetected based on the measurements. Responsive to the detection of thetriggering condition, the wireless device 200 reselects a second radioresource from the one or more candidate radio resources in accordance toa reselection rule (block 420). In some embodiments, the reselectionrule is different from the selection rule. Also, in some embodiments,the reselection rule is device-specific so that different wirelessdevices 200 apply the reselection rule differently to reduce the chancesof a resource collision.

FIG. 7 illustrates an exemplary wireless device 200 configured toperform a resource reselection method as shown in FIG. 3. The wirelessdevice 200 comprises a processing circuit 210, memory 220, and interfacecircuit 230. The processing circuit 210 may comprise one or moremicroprocessors, microcontrollers, digital signal processors, hardware,firmware or a combination thereof. The processing circuit 210 isconfigured to select radio resources for transmitting signals to one ormore other wireless devices 200 from a pool of shared resources ashereinabove described. The memory 220 is configured to store computerprograms and/or instructions that, when executed, by the processingcircuit 210, cause the wireless device 200 to perform the resourcereselection methods described above. The interface circuit 230 may, forexample, comprise a transceiver configured to operate according to theLTE Rel-12 standard. Those skilled in the art will appreciate, however,that the interface circuit 230 may operate according to other standards.

In one embodiment, the processing circuit 210 comprises a measurementunit 212 and resource selection unit 214. The measurement unit 212comprises circuitry that is configured to perform measurements or sensethe radio environment as hereinabove described and to provide themeasurements to the resource selection unit 214. In one embodiment, themeasurement unit 212 measures the interference on the resources in theresource pool. The resource selection unit 214 comprises circuitryconfigured to select/reselect resources from the shared pool ofresources based on the measurements provided by the measurement unit212. In one embodiment, the resource selection unit 214 is configured toselect an initial radio resource from a set of candidate resourcesaccording a selection rule, to detect a triggering condition, and toreselect a second radio resource from the one or more candidate radioresources in accordance to a reselection rule responsive to thetriggering condition.

In one embodiment, memory 220 may store a measurement module 222 andresource selection module 224. The measurement module 222 comprisesexecutable program code that is executed by the processing circuit 210to perform measurements or sense the radio environment as hereinabovedescribed. In one embodiment, the measurement module 222 comprisesprogram code for measuring the interference associated with theresources in the resource pool. The resource selection module 224comprises program code that is executed by the processing circuit 210 toselect/reselect resources from the shared pool of resources based on themeasurements provided by the measurement unit 212. In one embodiment,the resource selection module 224 comprises executable program code toselect an initial radio resource from a set of candidate resourcesaccording a selection rule, to detect a triggering condition, and toreselect a second radio resource from the one or more candidate radioresources in accordance to a reselection rule responsive to thetriggering condition.

The present invention may, of course, be carried out in other ways thanthose specifically set forth herein without departing from essentialcharacteristics of the invention. The present embodiments are to beconsidered in all respects as illustrative and not restrictive, and allchanges coming within the meaning and equivalency range of the appendedclaims are intended to be embraced therein.

1.-50. (canceled)
 51. A method of selecting radio resources by a devicefor use in device-to-device communications with one or more otherdevices, said method comprising: selecting, according to a selectionrule, a first radio resource from a shared pool of radio resources fortransmission of signals; performing measurements on the first radioresource and one or more candidate radio resources in the shared pool ofradio resources; detecting a triggering condition based at least in parton the measurements; and responsive to the detection of the triggeringcondition, reselecting a second radio resource from the one or morecandidate radio resources according to a reselection rule.
 52. Themethod of claim 51, wherein selecting the first radio resource from ashared pool of radio resources for transmission of signals according toa selection rule comprises selecting a radio resource based on the firstutility function.
 53. The method of claim 52, wherein selecting thefirst radio resource based on the first utility function comprisesselecting one of said radio resources from the shared pool of radioresources that maximizes the first utility function.
 54. The method ofclaim 52, wherein selecting the first radio resource based on the firstutility function comprises: ranking available radio resources in theshared pool of radio resources based on the first utility function; andselecting one of the available radio resources from among the n highestranked radio resources.
 55. The method of claim 54, wherein selectingone of the available radio resources from among the n highest rankedradio resources comprises randomly selecting one of the n highest rankedradio resources.
 56. The method of claim 54, wherein the one of theavailable radio resources is selected from among the n highest rankedradio resources according to a device-specific pattern.
 57. The methodof claim 51, wherein the reselection rule is different from theselection rule.
 58. The method of claim 51, wherein reselecting thesecond radio resource from the one or more candidate radio resourcesaccording to the reselection rule comprises reselecting the second radioresource based on a second utility function
 59. The method of claim 58,wherein reselecting the second radio resource based on the secondutility function comprises reselecting one of said radio resources fromthe shared pool of radio resources that maximizes the second utilityfunction.
 60. The method of claim 58, wherein reselecting the secondradio resource based on the second utility function comprises: rankingavailable radio resources in the shared pool of radio resources based onthe second utility function; and reselecting one of the available radioresources from among the n highest ranked radio resources.
 61. Themethod of claim 60, wherein reselecting one of the available radioresources from among the n highest ranked radio resources comprisesrandomly selecting one of the n highest ranked radio resources.
 62. Themethod of claim 60, wherein the one of the available radio resources isreselected from among the n highest ranked radio resources according toa device-specific pattern.
 63. The method of claim 58, wherein the firstutility function and the second utility functions are different.
 64. Themethod of claim 51, wherein reselecting the second radio resource fromthe one or more candidate radio resources according to the reselectionrule comprises reselecting the second radio resource according to adevice-specific reselection rule to reduce resource collision betweenthe device and other devices.
 65. The method of claim 64, wherein thedevice-specific reselection rule comprises a device-specific pattern.66. The method of claim 65, wherein the first radio resource comprisesboth time and frequency resources, and wherein the device-specificpattern comprises a circular shift of the time resource by adevice-specific number of time units.
 67. The method of claim 64,wherein reselecting the second radio resource from the one or morecandidate radio resources according to the device-specific reselectionrule comprises reselecting the second radio resource based on at leastone of a time of the first radio resource and a frequency of the firstradio resource.
 68. The method of claim 51, wherein: the triggeringcondition is based on at least one of a utility of the first radioresource and a utility of the second radio resource; and the utility ofthe first radio resource and the utility of the second radio resourceare based on the measurements.
 69. The method of claim 68, wherein theutility of the first radio resource and the utility of the second radioresource are based on respective utility functions that are different.70. The method of claim 68, wherein the triggering condition comprisesat least one of the following: the utility of the first radio resourceis below a first threshold, and the utility of the second radio resourceis above a second threshold.
 71. The method of claim 67, wherein thetriggering condition comprises a difference between the utility of thesecond radio resource and the utility of the first radio resourceexceeding a threshold.
 72. The method of claim 51 wherein the triggeringcondition comprises a difference between a first measurement performedon the first radio resource and a second measurement performed on thesecond radio resource exceeding a threshold.
 73. The method of claim 72wherein the first and second measurements comprise interferencemeasurements.
 74. The method of claim 51 wherein the triggeringcondition is further based on a time threshold.
 75. A device configuredfor device-to-device communications with one or more other devices,comprising: an interface circuit operative to transmit and receive radiosignals; and a processing circuit operatively coupled to the interfacecircuit and configured to: select radio resources from a shared of radioresources for transmitting signals to the one or more other devices;select a first radio resource from a pool the shared radio resources fortransmission of signals according to a selection rule; performmeasurements on the first radio resource and one or more candidate radioresources in the shared pool of radio resources; detect a triggeringcondition based at least in part on the measurements; and responsive tothe detection of the triggering condition, reselect a second radioresource from the one or more candidate radio resources according to areselection rule.
 76. The device of claim 75, wherein the processingcircuit is further configured to select the first radio resource basedon a first utility function.
 77. The device of claim 76, wherein theprocessing circuit is further configured to select, as the first radioresource, one of said radio resources from the shared pool of radioresources that maximizes the first utility function.
 78. The device ofclaim 76, wherein the processing circuit is further configured to: rankavailable radio resources in the shared pool of radio resources based onthe first utility function; and select one of the available radioresources from among the n highest ranked radio resources.
 79. Thedevice of claim 78, wherein the processing circuit is further configuredto randomly select the one of the available radio resources.
 80. Thedevice of claim 78, wherein the processing circuit is further configuredto select the one of the available radio resources from among the nhighest ranked radio resources according to a device-specific pattern.81. The device of claim 75, wherein the reselection rule is differentfrom the selection rule.
 82. The device of claim 75, wherein theprocessing circuit is further configured to reselect the second radioresource based on a second utility function
 83. The device of claim 82,wherein the processing circuit is further configured to reselect, as thesecond radio resource, one of said radio resources from the shared poolof radio resources that maximizes the second utility function.
 84. Thedevice of claim 82, wherein the processing circuit is further configuredto: rank available radio resources in the shared pool of radio resourcesbased on the second utility function; and reselect one of the availableradio resources from among the n highest ranked radio resources.
 85. Thedevice of claim 84, wherein the processing circuit is further configuredto randomly reselect the one of the available radio resources.
 86. Thedevice of claim 85, wherein the processing circuit is further configuredto reselect the one of the available radio resources from among the nhighest ranked radio resources according to a device-specific pattern.87. The device of claim 82, wherein the first utility function and thesecond utility functions are different.
 88. The device of claim 75,wherein the processing circuit is further configured to reselect asecond radio resource according to a device-specific reselection rule toreduce resource collision between the device and other devices.
 89. Thedevice of claim 88, wherein the device-specific reselection rulecomprises a device-specific pattern.
 90. The device of claim 89,wherein: the first radio resource comprises both a time and a frequencyresource, and the device-specific pattern comprises a circular shift ofthe time resource by a device-specific number of time units.
 91. Thedevice of claim 88, wherein the processing circuit is further configuredto reselect the second radio resource based on at least one of a time ofthe first radio resource and a frequency of the first radio resource.92. The device of claim 75, wherein: the triggering condition is basedon at least one of a utility of the first radio resource and a utilityof the second radio resource; and the utility of the first radioresource and the utility of the second radio resource are based on themeasurements.
 93. The device of claim 92, wherein the utility of thefirst radio resource and the utility of the second radio resource arebased on respective utility functions that are different.
 94. The deviceof claim 92, wherein the triggering condition comprises at least one of:the utility of the first radio resource is below a first threshold, theutility of the second radio resource is above a second threshold. 95.The device of claim 92, wherein the triggering condition comprises adifference between the utility of the second radio resource and theutility of the first radio resource exceeding a threshold.
 96. Thedevice of claim 75 wherein the triggering condition comprises adifference between a first measurement performed on the first radioresource and a second measurement performed on the second radio resourceexceeding a threshold.
 97. The device of claim 96, wherein the first andsecond measurements comprise interference measurements.
 98. The deviceof claim 75, wherein the triggering condition is further based on a timethreshold.
 99. A non-transitory, computer-readable medium storingcomputer-executable instructions that, when executed by a processingcircuit in a device, configures the device to perform operationscorresponding to the method of claim 51.